package org.cskt.sl.sys.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.cskt.sl.sys.entity.Dictionary;
import org.cskt.sl.sys.example.DictionaryExample;

/**
 *	wq write
 */
public interface DictionaryMapper {
	/**
	 * 查询数据字典数量
	 * @param example
	 * @return
	 */
    int countByExample(@Param("example")DictionaryExample example);
    /**
     * 根据条件批量删除字典信息
     * @param example
     * @return
     */
    int deleteByExample(@Param("example")DictionaryExample example);
    /**
     * 按主键删除字典信息
     * @param example
     * @return
     */
    int deleteByPrimaryKey(Integer did);
    /**
     * 新增字典信息(完全新增)
     * @param record
     * @return
     */
    int insert(Dictionary record);
    /**
     * 新增字典信息(动态新增)
     * @param record
     * @return
     */
    int insertSelective(Dictionary record);
    /**
     * 根据条件过滤并且分页字典信息
     * @param example
     * @return
     */
    List<Dictionary> selectByExample(@Param("example")DictionaryExample example,@Param("first") int firstResult,@Param("max") int maxResult);
    /**
     * 根据主键查询字典信息
     * @param did
     * @return
     */
    Dictionary selectByPrimaryKey(Integer did);
    /**
     * 根据条件批量更新字典信息(根据是否为空动态更新)
     * @param record
     * @param example
     * @return
     */
    int updateByExampleSelective(@Param("record") Dictionary record, @Param("example") DictionaryExample example);
    /**
     * 根据条件批量更新字典信息(完全更新)
     * @param record
     * @param example
     * @return
     */
    int updateByExample(@Param("record") Dictionary record, @Param("example") DictionaryExample example);
    /**
     * 根据主键更新字典信息(根据是否为空动态更新)
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(Dictionary record);
    /**
     * 根据主键更新字典信息(完全更新)
     * @param record
     * @return
     */
    int updateByPrimaryKey(Dictionary record);
}